using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace VOL.Entity.DomainModels
{
    /// <summary>
    /// 销售订单创建DTO，不包含系统自动生成的字段
    /// </summary>
    public class ShopOrderDto
    {
        /// <summary>
        /// ID
        /// </summary>
        [Required(AllowEmptyStrings = false)]
        public long Id { get; set; }
        /// <summary>
        /// 销售单号
        /// </summary>
        [Required(AllowEmptyStrings = false)]
        public string ShopOrderCode { get; set; }

        /// <summary>
        /// 销售日期
        /// </summary>
        [Required(AllowEmptyStrings = false)]
        public DateTime ShopOrderDate { get; set; }

        /// <summary>
        /// 客户外键Id
        /// </summary>
        [Required(AllowEmptyStrings = false)]
        public long CustomerId { get; set; }

        /// <summary>
        /// 客户名称
        /// </summary>
        public string CustomerName { get; set; }

        /// <summary>
        /// 联系人
        /// </summary>
        [Required]
        public string Contact { get; set; }

        /// <summary>
        /// 联系方式
        /// </summary>
        [Required]
        public string ContactPhone { get; set; }

        /// <summary>
        /// 销售部门外键Id
        /// </summary>
        [Required]
        public string DeptId { get; set; }

        /// <summary>
        /// 部门名称
        /// </summary>
        public string DeptName { get; set; }

        /// <summary>
        /// 销售负责人外键(用户)Id
        /// </summary>
        [Required]
        public long UserId { get; set; }

        /// <summary>
        /// 用户名
        /// </summary>
        public string UserName { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        public string Remark { get; set; }

        /// <summary>
        /// 单据状态(1.草稿、2.审核、....)
        /// </summary>
        public int? Status { get; set; }

        /// <summary>
        /// 销售总数量
        /// </summary>
        [Required]
        public int ShopAllNum { get; set; }

        /// <summary>
        /// 销售总金额
        /// </summary>
        [Required]
        public long ShopAllMoney { get; set; }

        /// <summary>
        /// 销售总货品
        /// </summary>
        [Required]
        public string ShopAllGoods { get; set; }
        public string Creator { get; set; }
        public DateTime CreateDate { get; set; }

        /// <summary>
        /// 出库状态
        /// </summary>
        public int OutStatus { get; set; }

    }
}
